package com.ad.backstage.service;

import com.ad.backstage.model.ItemDetail;
import com.ad.payload.dto.item.*;
import com.ad.payload.model.IdDto;
import com.ad.payload.model.PageView;
import com.ad.payload.vo.item.ItemCategoryVo;
import com.ad.payload.vo.item.ItemDetailVo;

/**
 * @author:dxgong
 * @日期 2021/4/17 18:39
 * @注释 商品类型
 */
public interface ItemSystemService {


    /**
     * 分页产品类目
     *
     * @param itemCategorySearchDto
     * */
    PageView<ItemCategoryVo> pageItemCategory(ItemCategorySearchDto itemCategorySearchDto);


    /**
     * 添加产品类目
     *
     * @param itemCategoryAddDto
     * */
    String addItemCategory(ItemCategoryAddDto itemCategoryAddDto);


    /**
     * 更新产品类目
     *
     * @param itemCategoryEditDto
     * */
    String updateItemCategory(ItemCategoryEditDto itemCategoryEditDto);


    /**
     * 删除产品类目
     *
     * @param idDto
     * */
    Long deleteItemCategory(IdDto idDto);


    /**
     * 根据id查询产品类目
     *
     * @param idDto
     * */
    ItemCategoryVo queryItemCategoryById(IdDto idDto);


    /**
     * 分页查询产品
     *
     * @param itemDetailSearchDto
     * */
    PageView<ItemDetailVo> pageItemDetailVo(ItemDetailSearchDto itemDetailSearchDto);


    /**
     * 新增产品
     *
     * @param itemDetailAddDto
     * */
    Long insertItemDetail(ItemDetailAddDto itemDetailAddDto);


    /**
     * 更新产品
     *
     * @param itemDetailEditDto
     * */
    Long updateItemDetail(ItemDetailEditDto itemDetailEditDto);


    /**
     * 删除产品
     *
     * @param idDto
     * */
    Long deleteItemDetail(IdDto idDto);


    /**
     * 根据id查询产品
     *
     * @param idDto
     * */
    ItemDetailVo selectItemDetailById(IdDto idDto);

}
